grammar CIPAUFGABE1Abgenommen;

options {
 output=AST; 
 ASTLabelType=CommonTree; 
}


tokens {RAETSEL;}

program: 	expression tripleop expression tripleequal expression;
//program:   ( a1=num o1=op a2=num e1=equ a3=num
//	    o2=op o3=op o4=op
//	    a4=num o5=op a5=num e2=equ a6=num
//	    e3=equ e4=equ e5=equ
//	    a7=num o6=op a8=num e6=equ a9=num)
//	    ;
expression	:num  NEWLINE -> num
                 op  NEWLINE -> op
                 num  Equ  num

		;
op 	:	Op;	
equ          
	:	 Equ;	
num		:(Num)*
		;	
tripleequal	:Equ  Equ  Equ 
		;	
tripleop	: Op Op Op 
		;

		
Op		:('+'|'-')
		;
Equ		:('=')
		;
Num		:('A'..'G')
		;

NEWLINE : '\r'? '\n' ;
WS      : ( ' ' | '\t' )+ { skip(); } ;

	